package edu.whu.notepal.utils;

import com.fasterxml.jackson.annotation.JsonValue;

/**
 * @author 陈磊
 */
public enum MessageType {
    /**
     * 0-好友申请
     * 1-好友消息
     * 2-群消息
     * 3-便签临时消息
     * 4-建立好友成功 msg 0-失败 1-成功
     * 5-删除好友
     * 6-临时会话建立
     * 7-临时会话关闭
     * 8-被移除群聊
     * 9-退出群组
     * 10-进入群组
     * 11-拒绝好友请求
     * 12-游戏请求
     * 13-开始游戏
     * 14-拒绝游戏
     * 15-退出游戏
     * 16-游戏消息
     * 17-游戏题目
     * 18-游戏传输图片
     * 19-下一轮游戏
     * 20-聊天发送图片
     * 21-视频聊天请求
     */
    FRIEND_REQUEST(0),
    FRIEND_MESSAGE(1),
    GROUP_MESSAGE(2),
    TEMPORARY_MESSAGE(3),
    FRIEND_ACCESS(4),
    FRIEND_DELETE(5),
    PRIVATE_CHAT_ESTABLISHED(6),
    PRIVATE_CHAT_CLOSED(7),
    GET_BOOTED(8),
    SOMEONE_EXIT(9),
    SOMEONE_ENTER(10),
    FRIEND_REJECT(11),
    GAME_REQUEST(12),
    GAME_START(13),
    GAME_REFUSED(14),
    GAME_EXIT(15),
    GAME_ONGOING(16),
    GAME_TOPIC(17),
    GAME_IMG(18),
    GAME_REFRESH(19),
    CHAT_PIC(20),
    VIDEO_REQ(21),
    VIDEO_CONFIRM(22),
    VIDEO_REFUSE(23),
    VIDEO_OFFER_SEND(24),
    VIDEO_ANSWER_SEND(25),
    VIDEO_ACANDIDATE(26),
    VIDEO_BCANDIDATE(27),
    VIDEO_CANCEL(28);

    private final Integer code;

    MessageType(Integer code){
        this.code=code;
    }

    @JsonValue
    public Integer getCode() {
        return code;
    }

}